#include<iostream>
using namespace std;
class base2
{
protected:
	int _a;
public:
	virtual void fun1() {}
	virtual void fun2() {}
};

class base1
{
public:
	//static virtual void func() { cout << "func()" << endl; }
	virtual void fun1() {}
	virtual void fun2() {}
protected:
	int _b;
	int _c;
};

class student : public base1
{
public:
	virtual void fun2() {}
protected:
	int _d;
};

int main()
{
	student s;
	base1* ptr1 = &s;
	base2* ptr2 = &s;
	ptr2->fun2();
	return 0;

}